package cn.hou.java.designpattern._10facade;

//外观调用者
public class Facade {
	//引用所有功能提供者
	private SystemA systemA;
	private SystemB systemB;
	private SystemC systemC;
	public Facade() {
		this.systemA =new SystemA();
		this.systemB =new SystemB();
		this.systemC =new SystemC();
	}
	//定义调用的方法
	public void doAll(){
		systemA.doSomething();
		systemB.doSomething();
		systemC.doSomething();
	}
	public void doAB(){
		systemA.doSomething();
		systemB.doSomething();
	}
	public void doAC(){
		systemA.doSomething();
		systemC.doSomething();
	}
	public void doBC(){
		systemB.doSomething();
		systemC.doSomething();
	}
	public void doA(){
		systemA.doSomething();
	}
	public void doB(){
		systemB.doSomething();
	}
	public void doC(){
		systemC.doSomething();
	}
	
}
